package StringClass;

public class TesrString {
    public static void main(String[] args) {
        System.out.println("abc");//字符串是一个被final修饰的字符数组
        char[] cha= {'h','g','f','f','f'};
        new String(cha);//保证字符串类型不变的特性
        System.out.println("=========");
        String s1="abc";//被final修饰的,String类从不能改变,产生一个对象,字符串池中存储
        String s2 =s1+"sdf";//拷贝字符串所代表的的值
        String str ="Hello";//不变的,不能扩容,不能加强
       StringBuilder  stringBuilder = new StringBuilder(str);//内存中创建了一个指向对象Hello,能扩容,可加强
        stringBuilder.append(100);//在原有空间增加
        str =stringBuilder.toString();
        String s3="abc";//1.z直接声明2首次出现(保存在池中)
        String s4=s3+"def";//拼接的放在堆里面,得到一个New String(xxx.xxx)
        String s5="abcdef";
        s4.intern();//手工在程序运行放在堆中

        System.out.println(s4==s5);//一个在池里面,一个在堆里面(不变的放在池中,动态放在堆中)
        System.out.println(str);
    }
}
